package com.mybatis.cfg;

import lombok.Data;

import java.util.HashMap;
import java.util.Map;

/**
 * 该类是mybatis的配置文件类
 * 通过上一篇的了解 我们知道mybatis的配置文件主要为三个
 * 1. 数据库信息
 * 2. 映射文件的信息
 * 数据库信息
 * 映射文件的信息 又分为
 * 1. 执行的sql信息
 * 2. 封装的实力类全限定类名
 */
@Data
public class Configuration {
    private String driver;
    private String url;
    private String username;
    private String password;
    private Map<String, Mapper> mappers = new HashMap<>();

    /**
     * 这里我们需要注意一点就是 我们需要重写setMappers方法
     * 比如说我们有两个映射文件需要加载到当前类，
     * 我们要做的是两个文件的信息合并到一起，
     * 而不是由第二个配置文件信息替换掉第一个配置文件
     * @param mappers
     */
    public void setMappers(Map<String, Mapper> mappers ){
        this.mappers.putAll(mappers);
    }
}
